Self-composition to Prove Relational Properties in Annotated C Program

نویسندگان

  • Lionel Blatter
  • Nikolai Kosmatov
  • Pascale Le Gall
  • Virgile Prevosto
چکیده

Deductive verification provides a powerful tool to show functional properties of a given program. However, in practice, many properties of interest link several program calls. This is for instance the case for non-interference, continuity and monotony. Other examples relate sequences of function calls, for instance to show that decrypting an encrypted message with the appropriate key gives back the original one message. Such properties cannot be expressed directly in the traditional setting used by modular deductive verification, but are amenable to verification through self-composition. This paper presents a verification tool dedicated to relational properties, in the form of a Frama-C plug-in called RPP and based on self-composition. It supports functions with side effects and recursive functions. Our initial experiments on existing benchmarks confirm that RPP is useful to prove relational properties.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Deciphering the functional role of hypothetical proteins from Chloroflexus aurantiacs J-10-f1 using bioinformatics approach

Chloroflexus aurantiacus J-10-f1 is an anoxygenic, photosynthetic, facultative autotrophic gram negative bacterium found from hot spring at a temperature range of 50-60°C. It can sustain itself in dark only if oxygen is available thereby exhibiting a dark orange color, however display a dark green color when grown in sunlight. Genome of the organism contains total of 3853 proteins out ...

متن کامل

Relational Symbolic Execution

Symbolic execution is a classical program analysis technique, widely used for program testing and bug finding. In this work we generalize symbolic execution to support program analysis for relational properties, namely properties about two programs, or about two executions of a single program on different inputs. We design a relational symbolic execution engine, named RelSym, which supports tes...

متن کامل

Proving uniformity and independence by self-composition and coupling

Proof by coupling is a classical proof technique for establishing probabilistic properties of two probabilistic processes, like stochastic dominance and rapid mixing of Markov chains. More recently, couplings have been investigated as a useful abstraction for formal reasoning about relational properties of probabilistic programs, in particular for modeling reduction-based cryptographic proofs a...

متن کامل

Compositional Optimization of Disjunctive Abstract Interpretations

We define the inverse operation for disjunctive completion, introducing the notion of least disjunctive basis for an abstract domain D: this is the most abstract domain inducing the same disjunctive completion as D. We show that the least disjunctive basis exists in most cases, and study its properties in relation with reduced product of abstract interpretations. The resulting framework is powe...

متن کامل

A NEW APPROACH TO STABILITY ANALYSIS OF FUZZY RELATIONAL MODEL OF DYNAMIC SYSTEMS

This paper investigates the stability analysis of fuzzy relational dynamic systems. A new approach is introduced and a set of sufficient conditions is derived which sustains the unique globally asymptotically stable equilibrium point in a first-order fuzzy relational dynamic system with sumproduct fuzzy composition. This approach is also investigated for other types of fuzzy relational composit...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • CoRR

دوره abs/1801.06876  شماره 

صفحات  -

تاریخ انتشار 2018